Patient Access Clinical Data API - Implementation Template (US Core)
Setup guide
Please review the pre-requisite setup instructions for setting up Salesforce Health Cloud, Salesforce Connected App, and MuleSoft's HL7 Connector.
Importing Templates into Anypoint Studio
- In Studio, click the Exchange X icon in the upper left of the taskbar.
- Log in with your Anypoint Platform credentials.
- Search for the template
- Click Open.
Running Templates in Anypoint Studio
After you import your template into Studio, follow these configuration steps to run it:
Common Configuration
mule.env
- sets the environment where the application is to be deployed. It should be configured inconfig-<mule.env>.yaml
file. For a studio deployment, the recommended mule.env value islocal
.mule.key
- sets the encryption password to be used for encrypting secure properties. Update as needed.api.autoDiscoveryID
should be configured inconfig-<mule.env>.yaml
file.
HTTPS Configuration
https.host
— sets the service host interface. It should be configured inconfig-<mule.env>.yaml
file. (Defaults to 0.0.0.0 for all interfaces).https.port
— sets the HTTPS service port number. It should be configured inconfig-<mule.env>.yaml
file. (Default 8082).https.defaultRecordLimit
: Sets the default search limit for the result set. (Default 20).- TLS Configuration - Keystore properties setup:
keystore.alias
- sets the alias to the keystore. It should be configured inconfig-<mule.env>.yaml
file.keystore.path
- sets the path to the key file. Key should be available in /src/main/resources/keystore. It should be configured inconfig-<mule.env>.yaml
file.keystore.keypass
— sets keystore keypass to support HTTPS operation. It should be encrypted and configured inconfig-secured-<mule.env>.yaml
file.keystore.password
— sets keystore password to support HTTPS operation. It should be encrypted and configured inconfig-secured-<mule.env>.yaml
file.
Please refer to the attached link on how to generate the Keystore.
Please refer to the attached link on how to secure the configuration properties.
System APIs configuration
fhir.api.device
: Is a string with the end point of us core device system api.fhir.api.diagnosticReport
: Is a string with the end point of us core diagnosticReport system api.fhir.api.documentReference
: Is a string with the end point of us core documentReference system api.fhir.api.procedure
: Is a string with the end point of us core procedure system api.fhir.api.medicationRequest
: Is a string with the end point of us core medicationRequest system api.fhir.api.coverage
: Is a string with the end point of us core coverage system api.fhir.api.patient
: Is a string with the end point of us core patient system api.fhir.api.allergyIntolerance
: Is a string with the end point of us core allergyIntolerance system api.fhir.api.carePlan
: Is a string with the end point of us core carePlan system api.fhir.api.careTeam
: Is a string with the end point of us core careTeam system api.fhir.api.condition
: Is a string with the end point of us core condition system api.fhir.api.encounter
: Is a string with the end point of us core encounter system api.fhir.api.goal
: Is a string with the end point of us core goal system api.fhir.api.immunization
: Is a string with the end point of us core immunization system api.fhir.api.location
: Is a string with the end point of us core location system api.fhir.api.medication
: Is a string with the end point of us core device medication api.fhir.api.organization
: Is a string with the end point of us core organization system api.fhir.api.observation
: Is a string with the end point of us core observation system api.fhir.api.practitioner
: Is a string with the end point of us core practitioner system api.fhir.api.practitionerRole
: Is a string with the end point of us core practitionerRole system api.
Run it
- Right-click the template project folder.
- Hover your mouse over Run as.
- Click Mule Application (configure).
- Inside the dialog, select Environment and set the variable mule.env to the appropriate value (e.g dev or local).
- Inside the dialog, select Environment and set the variable mule.key. Click Run.
Deployment instructions for CloudHub using provided scripts
Ensure the Maven profile CloudHub-DEV
has been properly configured in your settings.xml
file. Reference can be found by downloading the Accelerator Setup Guide asset. Additional instructions are available in Accelerator Setup Guide - Configuring the Accelerator Build
section.
Update the config-<env>.yaml
properties appropriately and then use one of the following scripts to deploy the application to CloudHub:
- packageDeploy.sh or deployOnly.sh (Mac/Linux)
- packageDeploy.cmd or deployOnly.cmd (Windows)
Test it
- Use Advanced Rest Client or Postman to send a request over HTTPS. The template includes a postman collection in the
src/test/resources
folder. Update the collection variable(s) after successful import.